<?php

declare(strict_types=1);

namespace App\Robot\Crontab;

class DeleteSqlLogFilesCrontab
{

    /**
     * 定时任务逻辑
     */
    public function execute()
    {
        // 日志目录
        $directory = BASE_PATH.'/runtime/logs/sql/';

        // 获取所有日志文件
        $iterator = new \FilesystemIterator($directory);

        foreach ($iterator as $file) {
            if ($file->isFile() && $file->getExtension() === 'log') {
                // 如果文件是日志文件，且修改时间超过7天，则删除它
                if (time() - $file->getMTime() > 7 * 86400) {
                    unlink($file->getRealPath());
                    echo "Deleted: " . $file->getFilename() . "\n";  // 输出已删除文件的名称
                }
            }
        }
    }
}